import {
	RouterMount,
	createRouter
} from 'uni-simple-router'
import store from '@/store';
const router = createRouter({
	platform: process.env.VUE_APP_PLATFORM,
	APP: {
		registerLoadingPage: false
	},
	routes: [...ROUTES]
})

// 白名单页面路径
export const whiteList = [
	'/pages/login/login', // 登录页面
	'/pages/login/register', // 注册页面
	'/pages/language/language', // 注册页面
];

// 全局路由前置守卫
// 添加全局前置守卫
router.beforeEach((to, from, next) => {

	const token = store.getters.token; // 获取登录状态
	const isWhiteListed = whiteList.includes(to.path); // 判断是否在白名单中

	if (isWhiteListed) {
		// 在白名单中，直接放行
		next();
	} else {
		if (token) {
			// 已登录
			next();
		} else {
			// 未登录，跳转到登录页面，并携带重定向参数
			next({
				path: '/pages/login/login',
				query: {
					redirect: to.fullPath
				}, // 保存目标路径以便登录后跳转
			});
		}
	}
});
// 全局路由后置守卫
router.afterEach((to, from) => {})

export {
	router,
	RouterMount
}